using System;
using NUnit.Framework;
using dnA.Math;

namespace dnA.dnAtests.Math 
{
	[TestFixture]
	public class ComplexMath_Float_TanhTest
	{
		[Test]
		public void Tanh()
		{
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,1.19209289550780998537e-7f)), new ComplexFloat(0.0f,1.19209289550781563226e-7f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,-1.19209289550780998537e-7f)), new ComplexFloat(0.0f,-1.19209289550781563226e-7f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,5.0e-1f)), new ComplexFloat(0.0f,5.46302489843790513255e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,-5.0e-1f)), new ComplexFloat(0.0f,-5.46302489843790513255e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,1.0f)), new ComplexFloat(0.0f,1.55740772465490223051f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,-1.0f)), new ComplexFloat(0.0f,-1.55740772465490223051f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,2.0f)), new ComplexFloat(0.0f,-2.18503986326151899164f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,-2.0f)), new ComplexFloat(0.0f,2.18503986326151899164f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,8.388608e6f)), new ComplexFloat(0.0f,-4.79341238626542857159e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(0.0f,-8.388608e6f)), new ComplexFloat(0.0f,4.79341238626542857159e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,0.0f)), new ComplexFloat(1.19209289550780433848e-7f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,0.0f)), new ComplexFloat(-1.19209289550780433848e-7f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,1.19209289550780998537e-7f)), new ComplexFloat(1.19209289550782127914e-7f,1.1920928955077986916e-7f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,-1.19209289550780998537e-7f)), new ComplexFloat(1.19209289550782127914e-7f,-1.1920928955077986916e-7f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,1.19209289550780998537e-7f)), new ComplexFloat(-1.19209289550782127914e-7f,1.1920928955077986916e-7f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,-1.19209289550780998537e-7f)), new ComplexFloat(-1.19209289550782127914e-7f,-1.1920928955077986916e-7f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,5.0e-1f)), new ComplexFloat(1.54786874104679875408e-7f,5.46302489843780432863e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,-5.0e-1f)), new ComplexFloat(1.54786874104679875408e-7f,-5.46302489843780432863e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,5.0e-1f)), new ComplexFloat(-1.54786874104679875408e-7f,5.46302489843780432863e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,-5.0e-1f)), new ComplexFloat(-1.54786874104679875408e-7f,-5.46302489843780432863e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,1.0f)), new ComplexFloat(4.08353664972140578674e-7f,1.5574077246548264166f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,-1.0f)), new ComplexFloat(4.08353664972140578674e-7f,-1.5574077246548264166f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,1.0f)), new ComplexFloat(-4.08353664972140578674e-7f,1.5574077246548264166f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,-1.0f)), new ComplexFloat(-4.08353664972140578674e-7f,-1.5574077246548264166f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,2.0f)), new ComplexFloat(6.883620266963823194e-7f,-2.18503986326133968913f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,-2.0f)), new ComplexFloat(6.883620266963823194e-7f,2.18503986326133968913f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,2.0f)), new ComplexFloat(-6.883620266963823194e-7f,-2.18503986326133968913f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,-2.0f)), new ComplexFloat(-6.883620266963823194e-7f,2.18503986326133968913f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,8.388608e6f)), new ComplexFloat(1.46599772339822753325e-7f,-4.79341238626534480166e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.19209289550780998537e-7f,-8.388608e6f)), new ComplexFloat(1.46599772339822753325e-7f,4.79341238626534480166e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,8.388608e6f)), new ComplexFloat(-1.46599772339822753325e-7f,-4.79341238626534480166e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.19209289550780998537e-7f,-8.388608e6f)), new ComplexFloat(-1.46599772339822753325e-7f,4.79341238626534480166e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,0.0f)), new ComplexFloat(4.62117157260009758502e-1f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,0.0f)), new ComplexFloat(-4.62117157260009758502e-1f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,1.19209289550780998537e-7f)), new ComplexFloat(4.62117157260014923167e-1f,9.37518755156906950334e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,-1.19209289550780998537e-7f)), new ComplexFloat(4.62117157260014923167e-1f,-9.37518755156906950334e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,1.19209289550780998537e-7f)), new ComplexFloat(-4.62117157260014923167e-1f,9.37518755156906950334e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,-1.19209289550780998537e-7f)), new ComplexFloat(-4.62117157260014923167e-1f,-9.37518755156906950334e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,5.0e-1f)), new ComplexFloat(5.64083141267498498301e-1f,4.0389645531602573987e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,-5.0e-1f)), new ComplexFloat(5.64083141267498498301e-1f,-4.0389645531602573987e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,5.0e-1f)), new ComplexFloat(-5.64083141267498498301e-1f,4.0389645531602573987e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,-5.0e-1f)), new ComplexFloat(-5.64083141267498498301e-1f,-4.0389645531602573987e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,1.0f)), new ComplexFloat(1.04283072834436108334f,8.0687741216308496805e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,-1.0f)), new ComplexFloat(1.04283072834436108334f,-8.0687741216308496805e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,1.0f)), new ComplexFloat(-1.04283072834436108334f,8.0687741216308496805e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,-1.0f)), new ComplexFloat(-1.04283072834436108334f,-8.0687741216308496805e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,2.0f)), new ComplexFloat(1.32128658377119172407f,-8.50878121144937689981e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,-2.0f)), new ComplexFloat(1.32128658377119172407f,8.50878121144937689981e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,2.0f)), new ComplexFloat(-1.32128658377119172407f,-8.50878121144937689981e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,-2.0f)), new ComplexFloat(-1.32128658377119172407f,8.50878121144937689981e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,8.388608e6f)), new ComplexFloat(5.41716250417887329949e-1f,-3.59344691191258128235e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(5.0e-1f,-8.388608e6f)), new ComplexFloat(5.41716250417887329949e-1f,3.59344691191258128235e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,8.388608e6f)), new ComplexFloat(-5.41716250417887329949e-1f,-3.59344691191258128235e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-5.0e-1f,-8.388608e6f)), new ComplexFloat(-5.41716250417887329949e-1f,3.59344691191258128235e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,0.0f)), new ComplexFloat(7.61594155955764888119e-1f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,0.0f)), new ComplexFloat(-7.61594155955764888119e-1f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,1.19209289550780998537e-7f)), new ComplexFloat(7.61594155955769433461e-1f,5.00648428933648718814e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,-1.19209289550780998537e-7f)), new ComplexFloat(7.61594155955769433461e-1f,-5.00648428933648718814e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,1.19209289550780998537e-7f)), new ComplexFloat(-7.61594155955769433461e-1f,5.00648428933648718814e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,-1.19209289550780998537e-7f)), new ComplexFloat(-7.61594155955769433461e-1f,-5.00648428933648718814e-8f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,5.0e-1f)), new ComplexFloat(8.42966204845783228749e-1f,1.95577310065933999348e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,-5.0e-1f)), new ComplexFloat(8.42966204845783228749e-1f,-1.95577310065933999348e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,5.0e-1f)), new ComplexFloat(-8.42966204845783228749e-1f,1.95577310065933999348e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,-5.0e-1f)), new ComplexFloat(-8.42966204845783228749e-1f,-1.95577310065933999348e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,1.0f)), new ComplexFloat(1.08392332733869454348f,2.71752585319511716529e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,-1.0f)), new ComplexFloat(1.08392332733869454348f,-2.71752585319511716529e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,1.0f)), new ComplexFloat(-1.08392332733869454348f,2.71752585319511716529e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,-1.0f)), new ComplexFloat(-1.08392332733869454348f,-2.71752585319511716529e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,2.0f)), new ComplexFloat(1.16673625724091988181f,-2.43458201185725252703e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,-2.0f)), new ComplexFloat(1.16673625724091988181f,2.43458201185725252703e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,2.0f)), new ComplexFloat(-1.16673625724091988181f,-2.43458201185725252703e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,-2.0f)), new ComplexFloat(-1.16673625724091988181f,2.43458201185725252703e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,8.388608e6f)), new ComplexFloat(8.26442970158583129592e-1f,-1.77637086921766769528e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(1.0f,-8.388608e6f)), new ComplexFloat(8.26442970158583129592e-1f,1.77637086921766769528e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,8.388608e6f)), new ComplexFloat(-8.26442970158583129592e-1f,-1.77637086921766769528e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-1.0f,-8.388608e6f)), new ComplexFloat(-8.26442970158583129592e-1f,1.77637086921766769528e-1f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,0.0f)), new ComplexFloat(9.64027580075816883946e-1f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,0.0f)), new ComplexFloat(-9.64027580075816883946e-1f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,1.19209289550780998537e-7f)), new ComplexFloat(9.64027580075817851838e-1f,8.42223463692232587918e-9f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,-1.19209289550780998537e-7f)), new ComplexFloat(9.64027580075817851838e-1f,-8.42223463692232587918e-9f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,1.19209289550780998537e-7f)), new ComplexFloat(-9.64027580075817851838e-1f,8.42223463692232587918e-9f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,-1.19209289550780998537e-7f)), new ComplexFloat(-9.64027580075817851838e-1f,-8.42223463692232587918e-9f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,5.0e-1f)), new ComplexFloat(9.79940849961738063073e-1f,3.02159873228775745529e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,-5.0e-1f)), new ComplexFloat(9.79940849961738063073e-1f,-3.02159873228775745529e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,5.0e-1f)), new ComplexFloat(-9.79940849961738063073e-1f,3.02159873228775745529e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,-5.0e-1f)), new ComplexFloat(-9.79940849961738063073e-1f,-3.02159873228775745529e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,1.0f)), new ComplexFloat(1.01479361614663356812f,3.38128260798966902844e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,-1.0f)), new ComplexFloat(1.01479361614663356812f,-3.38128260798966902844e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,1.0f)), new ComplexFloat(-1.01479361614663356812f,3.38128260798966902844e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,-1.0f)), new ComplexFloat(-1.01479361614663356812f,-3.38128260798966902844e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,2.0f)), new ComplexFloat(1.02383559457047268829f,-2.83929528682322890117e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,-2.0f)), new ComplexFloat(1.02383559457047268829f,2.83929528682322890117e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,2.0f)), new ComplexFloat(-1.02383559457047268829f,-2.83929528682322890117e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,-2.0f)), new ComplexFloat(-1.02383559457047268829f,2.83929528682322890117e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,8.388608e6f)), new ComplexFloat(9.76923254969577828273e-1f,-2.79067860702819187579e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(2.0f,-8.388608e6f)), new ComplexFloat(9.76923254969577828273e-1f,2.79067860702819187579e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,8.388608e6f)), new ComplexFloat(-9.76923254969577828273e-1f,-2.79067860702819187579e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-2.0f,-8.388608e6f)), new ComplexFloat(-9.76923254969577828273e-1f,2.79067860702819187579e-2f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,0.0f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,0.0f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,1.19209289550780998537e-7f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,-1.19209289550780998537e-7f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,1.19209289550780998537e-7f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,-1.19209289550780998537e-7f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,5.0e-1f)), new ComplexFloat(1.0f,-1.21442643638916640373e-64f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,-5.0e-1f)), new ComplexFloat(1.0f,-1.21442643638916640373e-64f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,5.0e-1f)), new ComplexFloat(-1.0f,1.21442643638916640373e-64f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,-5.0e-1f)), new ComplexFloat(-1.0f,1.21442643638916640373e-64f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,1.0f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,-1.0f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,1.0f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,-1.0f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,2.0f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,-2.0f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,2.0f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,-2.0f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,8.388608e6f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(8.388608e6f,-8.388608e6f)), new ComplexFloat(1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,8.388608e6f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
			TestHelper.TestRelativeError(ComplexMath.Tanh(new ComplexFloat(-8.388608e6f,-8.388608e6f)), new ComplexFloat(-1.0f,0.0f), 1e-7f);
		}
	}
}
